package com.wanji.gateway.command;

import com.wanji.gateway.constant.CommandPriority;

/**
 * 指令构建器接口 - 用于创建不同类型的指令
 */
public interface CommandBuilder<T extends DeviceCommand> {
    T build();

    CommandBuilder<T> withParam(String key, Object value);

    CommandBuilder<T> withPriority(CommandPriority priority);

    CommandBuilder<T> withTimeout(long timeout);
}
